﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using GameEngine.View.Components;

namespace GameEngine.Clients.Silverlight.View.Components
{
    //public class FrameworkElementView:IItemViewContainer<FrameworkElement>
    //{
    //    public FrameworkElementView(FrameworkElement view) {
    //        View = view;
    //        View.MouseLeftButtonUp += new MouseButtonEventHandler(View_MouseLeftButtonUp);
    //        View.KeyDown += new KeyEventHandler(View_KeyDown);
    //        View.KeyUp += new KeyEventHandler(View_KeyUp);
    //        View.MouseEnter += new MouseEventHandler(View_MouseEnter);
    //        View.MouseLeave += new MouseEventHandler(View_MouseLeave);
    //        View.MouseLeftButtonDown += new MouseButtonEventHandler(View_MouseLeftButtonDown);
    //        View.MouseLeftButtonUp+=new MouseButtonEventHandler(View_MouseLeftButtonUp);
    //        View.MouseMove += new MouseEventHandler(View_MouseMove);
    //        View.MouseWheel += new MouseWheelEventHandler(View_MouseWheel);
    //    }

    //    void View_MouseWheel(object sender, MouseWheelEventArgs e)
    //    {
    //        if (MouseWheel != null)
    //            MouseWheel(sender, e);
    //    }

    //    void View_MouseMove(object sender, MouseEventArgs e)
    //    {
    //        if (MouseMove != null)
    //            MouseMove(sender, e);
    //    }

    //    void View_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
    //    {
    //        if (MouseLeftButtonDown != null)
    //            MouseLeftButtonDown(sender, e);
    //    }

    //    void View_MouseLeave(object sender, MouseEventArgs e)
    //    {
    //        if (MouseLeave != null)
    //            MouseLeave(sender, e);
    //    }

    //    void View_MouseEnter(object sender, MouseEventArgs e)
    //    {
    //        if (MouseEnter != null)
    //            MouseEnter(sender, e);
    //    }

    //    void View_KeyUp(object sender, KeyEventArgs e)
    //    {
    //        if (KeyUp != null)
    //            KeyUp(sender, e);
    //    }

    //    void View_KeyDown(object sender, KeyEventArgs e)
    //    {
    //        if (KeyDown != null)
    //            KeyDown(sender, e);
    //    }

    //    void View_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
    //    {
    //        if (MouseLeftButtonUp != null)
    //            MouseLeftButtonUp(sender, e);
    //    }

    //    #region IItemViewContainer<FrameworkElement> Members

    //    public FrameworkElement View
    //    {
    //        get;
    //        set;
    //    }

    //    #endregion

    //    #region IItemView Members

    //    public event KeyEventHandler KeyDown;

    //    public event KeyEventHandler KeyUp;

    //    public event MouseEventHandler MouseEnter;

    //    public event MouseEventHandler MouseLeave;

    //    public event MouseButtonEventHandler MouseLeftButtonDown;

    //    public event MouseButtonEventHandler MouseLeftButtonUp;

    //    public event MouseEventHandler MouseMove;

    //    public event MouseWheelEventHandler MouseWheel;

    //    #endregion


    //    public void AddElement(FrameworkElement uiElement, MapEngine.Point3d position, MapEngine.Point3d rotation)
    //    {
    //        throw new NotImplementedException();
    //    }
    //}
}
